____ _ _ _ _
| _ \ ___ | |_ (_) _ __ ___ __| | (_) __ _
| |_) | / _ \ | __| | | | '_ \ / _ \ / _| | | | / _ |
| _ < | __/ | |_ | | | |_) | | __/ | (_| | | | | (_| |
|_| \_\ \___| \__| |_| | .__/ \___| \__,_| |_| \__,_|
|_|
- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b
Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―Β―
Java-Syntax
part 8/15 Β· 52.8 KB total
ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
public double summe(double a, double b) throws NotANumberException {
if (Double.isNaN(a) || Double.isNaN(b)) {
throw new NotANumberException();
}
return a + b;
}
Diese Methode erwartet zwei doppelt genaue Gleitkommazahlen als Parameter und gibt die Summe der beiden ebenfalls als Gleitkommazahl zurΓΌck. Falls eine der beiden Zahlen keine gΓΌltige Gleitkommazahl ist, wirft die Methode eine Ausnahme namens βNotANumberExceptionβ.
Beispiel einer abstrakten Methode:
public abstract double summe(double a, double b) throws NotANumberException;
Attribute
Attribute sind Variablen, die zu einem Objekt gehΓΆren. Sie sind durch einen Typ und einen Namen definiert und kΓΆnnen wahlweise bereits wenn das Objekt erzeugt wird initialisiert werden.
Beispiel einer Variablendeklaration ohne Initialisierung:
private int x;
Klassenvariablen werden als statische Attribute deklariert. Diese Attribute existieren nicht einmal pro Objekt, sondern nur einmal pro Klasse. Das SchlΓΌsselwort βfinalβ verhindert, dass eine Variable nach ihrer Initialisierung ihren Wert Γ€ndert. Es wird zum Beispiel verwendet, um Konstanten zu definieren.
Beispiel einer statischen und finalen Klassenvariablendeklaration mit Initialisierung:
private static final int X = 2;
Felder
In der Programmiersprache Java ist ein Feld (englisch Array) ein eigenstΓ€ndiges Objekt. Dieses kann Daten eines bei der Deklaration festgelegten Typs aufnehmen. Der Speicher wird erst bei der Initialisierung des Feldes belegt. Dazu muss eine LΓ€nge (englisch Size) angegeben werden, die beschreibt wie viele Elemente eines Typs das Feld besitzen soll. Die GrΓΆΓe eines Arrays ist fix und kann nach der Instanziierung nicht mehr geΓ€ndert werden. In Java wird ein Feld immer mit einem positiven Integer indiziert. Dadurch beschrΓ€nkt sich die mΓΆgliche LΓ€nge eines Arrays auf 0 bis 231 β 1.
Die einzelnen Elemente eines Feldes werden β analog zu den Attributen anderer Objekte β bei der Instanziierung des Feldes mit dem Nullwert des jeweiligen Feld-Grundtyps initialisiert. FΓΌr Felder von numerischen Primitivtypen ist dies 0 bzw. 0.0, fΓΌr ein Feld mit dem Grundtyp boolean ist es der Wert false, fΓΌr Felder von Objektreferenzen die leere Referenz null. Bei der Erzeugung eines Feldes von Objektreferenzen werden also auΓer dem Feld selbst noch keine Objekte erzeugt.
Echte mehrdimensionale Felder gibt es in Java nicht. Dennoch ist es mΓΆglich, mehrdimensionale Felder zu erstellen, indem Felder in Feldern verschachtelt werden. Im Falle eines zweidimensionalen Feldes wird hier zunΓ€chst ein Feld erstellt, welches Referenzen auf Felder des gewΓΌnschten Typs aufnehmen kann. AnschlieΓend wird jedem Platz dieses Feldes eine Referenz auf ein eindimensionales Feld des gewΓΌnschten Grundtyps zugewiesen.
Eindimensionales Feld
Deklaration
<Datentyp>[] <Variablenbezeichner>; // Deklaration
<Datentyp> <Variablenbezeichner>[]; // Alternative Deklaration (seltener verwendet)
Bei der Deklaration wird der Datentyp des Feldes festgelegt. Dabei wird jedoch kein Feld allokiert, sondern wie bei allen anderen Objekten nur eine Referenz eines Types definiert, der ein Feld zugewiesen werden kann.
Instanziierung
<Variablenbezeichner> = new <Datentyp>[<Anzahl>]; // Instanziierung eines eindimensionalen Feldes
ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ